.layout {
  margin: 20px 0;
  text-align: center;
}

.layout output {
  font-size: 1.25rem;
}

.layout p {
  margin: 0;
}

.button {
  margin: 40px 0 20px;
}

.grid {
  display: inline-grid;
  font-size: 2rem;
}

.tile {
  position: relative;
}

.frontface,
.backface {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  cursor: pointer;
  user-select: none;
  background-color: khaki;
  border-radius: 4px;
  box-shadow: 0 5px 4px rgb(0, 0, 0, 15%);
  transition: all 1s;
  transform: rotateY(0deg);
  backface-visibility: hidden;
}

.backface {
  transform: rotateY(180deg);
}

.frontface {
  transform: rotateY(0deg);
}

@media screen and (width >= 768px) {
  .grid {
    font-size: 3rem;
  }
}